#include "MesinKata.h"
#include <conio.h>
#include <stdlib.h>

int main() {
    char S[100],T[100],U[100];
    char C='1',D,E;
    printf(" Masukkan string untuk diproses : ");
    gets(S);
    printf(" Masukkan 1 karakter untuk ditambahkan di depan dan di belakang : ");
    scanf("%c",&C);
    AddChr(S,C);
    AddChrF(S,C);
    printf(" String saat ini : %s\n\n",S);
    printf(" Masukkan string untuk di depan dan belakang : ");
    gets(T);
    gets(T);
    AddStr(S,T);
    AddStrF(S,T);
    printf(" String saat ini : %s\n\n",S);
    
    printf(" Mencari posisi substring dari depan\n");
    printf(" Masukkan string yang anda cari :",T);
    gets(T);
    if (ExistSub(S,T)) {
         printf(" %s adalah SubString dari %s\n",T,S);
         printf(" Posisi string tersebut dimulai dari %d\n",ExistSub(S,T));
    }
    else  printf(" %s bukan SubString dari %s\n",T,S);
    printf(" String saat ini : %s\n\n",S);
    
    printf(" Mencari posisi substring dari belakang\n");
    printf(" Masukkan string yang anda cari :",T);
    gets(T);
    if (ExistSubLast(S,T)) {
         printf(" %s adalah SubString dari %s\n",T,S);
         printf(" Posisi string tersebut dimulai dari %d\n",ExistSubLast(S,T));
    }
    else  printf(" %s bukan SubString dari %s\n",T,S);
    printf(" String saat ini : %s\n\n",S);
    
    printf(" Apakah anda mau string ini diupcase ? Ya/Tidak : ");
    gets(T);
    UpperStr(U,T);
    if (SameStr(U,"YA")){
        UpperStr(T,S);
        CopyStr(S,T);                 
        printf(" Baiklah, string sekarang : %s\n\n",S);                 
    }
    else if (SameStr(U,"TIDAK")){
        printf(" String anda tetap : %s\n\n",S);
    }
    else {
        printf(" Input anda %s tidak dikenali. Dianggap Tidak diupcase.\n String Sekarang : %s\n\n",T,S); 
    }
    printf(" Masukkan substring yang mau diambil,\n dengan penanda berhenti adalah string : ");
    gets(T);
    GetStrLastCodeStr(U,S,T);
    printf(" String yang anda dapat : %s\n\n",U);
	return 0;
}
